" Vim syntax file
" Language:     Cherry
" Maintainer:   Chris Mueller <ruunsmail@gmail.com>

if version < 600
  syntax clear
elseif exists("b:current_syntax")
  finish
endif

syn keyword cherryDefine define


syn keyword cherryBoolean #t #f #true #false

syn match cherryChar    "\<#\\.\>"
syn match cherryChar    "\<#\\space\>"
syn match cherryChar    "\<#\\newline\>"
syn match cherryChar    "\<#\\return\>"
syn match cherryChar    "\<#\\null\?\>"
syn match cherryChar    "\<#\\backspace\>"
syn match cherryChar    "\<#\\tab\>"
syn match cherryChar    "\<#\\linefeed\>"
syn match cherryChar    "\<#\\vtab\>"
syn match cherryChar    "\<#\\page\>"
syn match cherryChar    "\<#\\rubout\>"
syn match cherryChar    "\<#\\[0-7]\{1,3}\>"
syn match cherryChar    "\<#\\x[0-9a-f]\{1,2}\>"
syn match cherryChar    "\<#\\u[0-9a-f]\{1,6}\>"

syn region cherryString start=/\%(\\\)\@<!"/ skip=/\\[\\"]/ end=/"/

hi link cherryChar  Character
hi link cherryBoolean Boolean
hi link cherryString String

hi link cherryDefine Define

let b:current_syntax = "cherry"
